﻿Public Class UnidadesMedida 

    Public Sub Mostrar()
        If guardar.Enabled = False Then
            guardar.Enabled = True
            cancelar.Enabled = True
            agregar.Enabled = False
            modificar.Enabled = False
            eliminar.Enabled = False
            imprimir.Enabled = False
            PanelArriba.Enabled = True
            PanelAbajo.Enabled = False
        Else
            cancelar.Enabled = False
            guardar.Enabled = False
            agregar.Enabled = True
            Modificar.Enabled = True
            Eliminar.Enabled = True
            imprimir.Enabled = True
            PanelArriba.Enabled = False
            PanelAbajo.Enabled = True

        End If
    End Sub
    Private Sub UnidadesMedida_Load(sender As System.Object, e As System.EventArgs) Handles MyBase.Load
        Try
            'TODO: This line of code loads data into the 'DbFireAndIceDataSet.unidadescategoria' table. You can move, or remove it, as needed.
            Me.UnidadescategoriaTableAdapter.Fill(Me.DbFireAndIceDataSet.unidadescategoria)
            'TODO: This line of code loads data into the 'DbFireAndIceDataSet.unidadesdemedida' table. You can move, or remove it, as needed.
            Me.UnidadesdemedidaTableAdapter.Fill(Me.DbFireAndIceDataSet.unidadesdemedida)
            'TODO: This line of code loads data into the 'DbFireAndIceDataSet.unidadesdemedida' table. You can move, or remove it, as needed.
            Me.UnidadesdemedidaTableAdapter.Fill(Me.DbFireAndIceDataSet.unidadesdemedida)
            PanelArriba.Enabled = False
        Catch ex As Exception
            AlertControl1.Show(Owner, "ERROR", "No se pudo cargar los datos de Unidades Medida")
        End Try
        
    End Sub

    Private Sub agregar_Click(sender As System.Object, e As System.EventArgs) Handles agregar.Click
        Try
            UnidadesdemedidaTableAdapter.Fill(DbFireAndIceDataSet.unidadesdemedida)
            BindingNavigatorAddNewItem.PerformClick()
            Mostrar()
            DescripcionTextBox.ReadOnly = False
            IdunidadTextBox.ReadOnly = True
            AbreviaturaTextBox.ReadOnly = False
            EquivalenciaurefTextBox.ReadOnly = False
            IdunidadescategoriaComboBox.Enabled = True
        Catch ex As Exception
            AlertControl1.AppearanceCaption.ForeColor = Color.Red
            AlertControl1.Show(Owner, "ERROR", "No se pudo cargar los datos de Unidades Medida")
        End Try
       

       
    End Sub

    Private Sub guardar_Click(sender As System.Object, e As System.EventArgs) Handles guardar.Click
        If DescripcionTextBox.Text.Length = 0 And IdunidadescategoriaComboBox.Text.Length = 0 Then
            ErrorProvider1.SetError(DescripcionTextBox, "Debe ingresar la descripción para el Documento")
        Else
            ErrorProvider1.SetError(DescripcionTextBox, Nothing)
            If IdunidadescategoriaComboBox.Text.Length = 0 Then
                ErrorProvider1.SetError(IdunidadescategoriaComboBox, "Debe ingresar una categoria para la unidad")
            Else
                ErrorProvider1.SetError(IdunidadescategoriaComboBox, Nothing)
                UnidadesdemedidaBindingNavigatorSaveItem.PerformClick()
                AlertControl1.AppearanceCaption.ForeColor = Color.Green
                AlertControl1.Show(Owner, "Unidades Medida", "Se han almacenado los datos correctamente")
                Mostrar()
            End If
        End If
    End Sub

    Private Sub UnidadesdemedidaBindingNavigatorSaveItem_Click(sender As System.Object, e As System.EventArgs)
        Try
            Me.Validate()
            Me.UnidadesdemedidaBindingSource.EndEdit()
            Me.TableAdapterManager.UpdateAll(Me.DbFireAndIceDataSet)
        Catch ex As Exception
            AlertControl1.Show(Owner, "ERROR", "No se pudo almacenar los datos")
        End Try
        

    End Sub

    Private Sub UnidadesdemedidaBindingNavigatorSaveItem_Click_1(sender As System.Object, e As System.EventArgs) Handles UnidadesdemedidaBindingNavigatorSaveItem.Click
        Try
            Me.Validate()
            Me.UnidadesdemedidaBindingSource.EndEdit()
            Me.TableAdapterManager.UpdateAll(Me.DbFireAndIceDataSet)
        Catch ex As Exception
            AlertControl1.Show(Owner, "ERROR", "No se pudo almacenar los datos")
        End Try

    End Sub

    Private Sub modificar_Click(sender As System.Object, e As System.EventArgs) Handles modificar.Click
        Mostrar()
    End Sub

    Private Sub eliminar_Click(sender As System.Object, e As System.EventArgs) Handles eliminar.Click
        Dim opcion As Integer
        opcion = MsgBox("¿Está seguro que desea eliminar el registro?", MsgBoxStyle.YesNo + MsgBoxStyle.Question, "Eliminar registro")
        If opcion = vbYes Then
            Try
                UnidadesdemedidaTableAdapter.DeleteQuery(IdunidadTextBox.Text)
                Me.UnidadesdemedidaTableAdapter.Fill(Me.DbFireAndIceDataSet.unidadesdemedida)
                AlertControl1.Show(Owner, "Unidades de Medida", "Se eliminaron los datos")

            Catch ex As Exception
                AlertControl1.Show(Owner, "ERROR", "Lo sentimos, el registro no puede ser eliminado ya que está relacionado con otras tablas")
            End Try


        End If
    End Sub

    Private Sub cancelar_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles cancelar.Click

        Try
            ErrorProvider1.SetError(DescripcionTextBox, Nothing)
            Mostrar()
            Me.UnidadesdemedidaTableAdapter.Fill(Me.DbFireAndIceDataSet.unidadesdemedida)
        Catch ex As Exception
            AlertControl1.Show(Owner, "ERROR", "No se pudo cargar los datos de Unidades de Medida")
        End Try



    End Sub

    Private Sub imprimir_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles imprimir.Click
        GridControl1.ShowPrintPreview()
    End Sub
End Class